Problem:
 active(and(tt(),X)) -> mark(X)
 active(plus(N,0())) -> mark(N)
 active(plus(N,s(M))) -> mark(s(plus(N,M)))
 active(and(X1,X2)) -> and(active(X1),X2)
 active(plus(X1,X2)) -> plus(active(X1),X2)
 active(plus(X1,X2)) -> plus(X1,active(X2))
 active(s(X)) -> s(active(X))
 and(mark(X1),X2) -> mark(and(X1,X2))
 plus(mark(X1),X2) -> mark(plus(X1,X2))
 plus(X1,mark(X2)) -> mark(plus(X1,X2))
 s(mark(X)) -> mark(s(X))
 proper(and(X1,X2)) -> and(proper(X1),proper(X2))
 proper(tt()) -> ok(tt())
 proper(plus(X1,X2)) -> plus(proper(X1),proper(X2))
 proper(0()) -> ok(0())
 proper(s(X)) -> s(proper(X))
 and(ok(X1),ok(X2)) -> ok(and(X1,X2))
 plus(ok(X1),ok(X2)) -> ok(plus(X1,X2))
 s(ok(X)) -> ok(s(X))
 top(mark(X)) -> top(proper(X))
 top(ok(X)) -> top(active(X))

Proof:
 Bounds Processor:
  bound: 2
  enrichment: match
  automaton:
   final states: {10,9,8,7,6,5}
   transitions:
    top1(20) -> 10*
    active1(2) -> 20*
    active1(4) -> 20*
    active1(1) -> 20*
    active1(3) -> 20*
    proper1(2) -> 20*
    proper1(4) -> 20*
    proper1(1) -> 20*
    proper1(3) -> 20*
    ok1(15) -> 15,8
    ok1(17) -> 20,9
    ok1(11) -> 11,6
    ok1(13) -> 13,7
    s1(2) -> 15*
    s1(4) -> 15*
    s1(1) -> 15*
    s1(3) -> 15*
    plus1(3,1) -> 13*
    plus1(3,3) -> 13*
    plus1(4,2) -> 13*
    plus1(4,4) -> 13*
    plus1(1,2) -> 13*
    plus1(1,4) -> 13*
    plus1(2,1) -> 13*
    plus1(2,3) -> 13*
    plus1(3,2) -> 13*
    plus1(3,4) -> 13*
    plus1(4,1) -> 13*
    plus1(4,3) -> 13*
    plus1(1,1) -> 13*
    plus1(1,3) -> 13*
    plus1(2,2) -> 13*
    plus1(2,4) -> 13*
    and1(3,1) -> 11*
    and1(3,3) -> 11*
    and1(4,2) -> 11*
    and1(4,4) -> 11*
    and1(1,2) -> 11*
    and1(1,4) -> 11*
    and1(2,1) -> 11*
    and1(2,3) -> 11*
    and1(3,2) -> 11*
    and1(3,4) -> 11*
    and1(4,1) -> 11*
    and1(4,3) -> 11*
    and1(1,1) -> 11*
    and1(1,3) -> 11*
    and1(2,2) -> 11*
    and1(2,4) -> 11*
    01() -> 17*
    tt1() -> 17*
    mark1(15) -> 15,8
    mark1(11) -> 11,6
    mark1(13) -> 13,7
    top2(21) -> 10*
    active0(2) -> 5*
    active0(4) -> 5*
    active0(1) -> 5*
    active0(3) -> 5*
    active2(17) -> 21*
    and0(3,1) -> 6*
    and0(3,3) -> 6*
    and0(4,2) -> 6*
    and0(4,4) -> 6*
    and0(1,2) -> 6*
    and0(1,4) -> 6*
    and0(2,1) -> 6*
    and0(2,3) -> 6*
    and0(3,2) -> 6*
    and0(3,4) -> 6*
    and0(4,1) -> 6*
    and0(4,3) -> 6*
    and0(1,1) -> 6*
    and0(1,3) -> 6*
    and0(2,2) -> 6*
    and0(2,4) -> 6*
    tt0() -> 1*
    mark0(2) -> 2*
    mark0(4) -> 2*
    mark0(1) -> 2*
    mark0(3) -> 2*
    plus0(3,1) -> 7*
    plus0(3,3) -> 7*
    plus0(4,2) -> 7*
    plus0(4,4) -> 7*
    plus0(1,2) -> 7*
    plus0(1,4) -> 7*
    plus0(2,1) -> 7*
    plus0(2,3) -> 7*
    plus0(3,2) -> 7*
    plus0(3,4) -> 7*
    plus0(4,1) -> 7*
    plus0(4,3) -> 7*
    plus0(1,1) -> 7*
    plus0(1,3) -> 7*
    plus0(2,2) -> 7*
    plus0(2,4) -> 7*
    00() -> 3*
    s0(2) -> 8*
    s0(4) -> 8*
    s0(1) -> 8*
    s0(3) -> 8*
    proper0(2) -> 9*
    proper0(4) -> 9*
    proper0(1) -> 9*
    proper0(3) -> 9*
    ok0(2) -> 4*
    ok0(4) -> 4*
    ok0(1) -> 4*
    ok0(3) -> 4*
    top0(2) -> 10*
    top0(4) -> 10*
    top0(1) -> 10*
    top0(3) -> 10*
  problem:
   
  Qed